Rocky Linux 9’da Fail2Ban ile SSH Güvenliği
Bu rehberde neler öğreneceksiniz?
Bu rehberde Rocky Linux 9 üzerinde Fail2Ban kurulumunu yaparak SSH brute-force saldırılarını otomatik olarak engellemeyi öğreneceksiniz. Jail yapılandırması, servis ayarları, test işlemleri ve SSS dahil eksiksiz bir güvenlik kurulum rehberi sunulmaktadır.
1. Fail2Ban Paketini Kurma
Fail2Ban, Rocky Linux varsayılan depolarında bulunmaz; önce EPEL deposu kurulmalıdır.
EPEL deposunu ekleyin
sudo dnf install epel-release -y
EPEL deposunu sunucuya ekler; Fail2Ban burada bulunur.
Fail2Ban’ı yükleyin
sudo dnf install fail2ban -y
Fail2Ban yazılımını sisteme kurar.
Servis durumunu kontrol edin
systemctl status fail2ban
Servisin yüklü olup olmadığını ve aktif/pasif durumunu gösterir.
2. Fail2Ban Konfigürasyonunu Hazırlama
Fail2Ban yapılandırma dosyaları /etc/fail2ban dizininde yer alır.
Varsayılan dosyayı yerel ayarlara kopyalayın
cd /etc/fail2ban
sudo cp jail.conf jail.local
Varsayılan dosya güncellemelerde değişebileceği için local dosyada düzenleme yapıyoruz.
Temel güvenlik parametrelerini düzenleyin
Aşağıdaki bölüm jail.local içinde yer almalıdır:
[DEFAULT]
bantime = 10m
findtime = 10m
maxretry = 5
10 dakika içinde 5 başarısız deneme yapan IP, 10 dakika boyunca banlanır.
3. SSH Jail’ini Etkinleştirme
SSH servisini korumak için ilgili jail’i aktif etmemiz gerekiyor.
[sshd]
enabled = true
port = ssh
logpath = %(sshd_log)s
backend = %(sshd_backend)s
SSH loglarını izleyerek hatalı girişleri tespit eder ve gerektiğinde IP’leri banlar.
İlgili filtre dosyası: /etc/fail2ban/filter.d/sshd.conf
4. Fail2Ban Servisini Başlatma
Servisi kalıcı olarak etkinleştirin
sudo systemctl enable fail2ban
Sunucu yeniden başlasa bile Fail2Ban otomatik çalışır.
Servisi hemen başlatın
sudo systemctl start fail2ban
Fail2Ban servisini aktif hale getirir.
Servis durumunu doğrulayın
sudo systemctl status fail2ban
“active (running)” görünüyorsa her şey doğru çalışıyor demektir.
5. (Opsiyonel) Ban Politikasını Test Etme
Başka bir sunucudan kasıtlı olarak yanlış giriş yaparak Fail2Ban’ın işleyişini test edebilirsiniz.
Yanlış giriş denemeleri yapın
Birden fazla hatalı deneme yapınca Fail2Ban devreye girer.
Beklenen davranış: Başta: Permission denied
Birkaç denemeden sonra: Connection refused (ban uygulanmış)
Banlanan IP’leri görüntüleme
sudo fail2ban-client status sshd
SSH jail’ine ait banlı IP listesi görüntülenir.
Sıkça Sorulan Sorular (SSS)
1. Fail2Ban sadece SSH koruması mı sağlar? Hayır, Nginx, Postfix, vs. için de filtreler etkinleştirilebilir.
2. Banlanan IP’yi nasıl kaldırırım?
sudo fail2ban-client set sshd unbanip <IP> komutu ile.
3. Kendi IP’mi banladım, ne yapacağım? Rabisu Bulut panelindeki Web Konsolu’ndan unban komutu çalıştır.
4. Fail2Ban saldırıyı nasıl algılıyor? Log dosyalarını regex filtreleriyle tarayıp başarısız giriş satırlarını yakalıyor.
5. Neden jail.conf yerine jail.local düzenleniyor?
jail.conf güncellemelerde değişir; jail.local değişmez.
Sonuç
Bu rehber ile Rocky Linux 9 üzerinde SSH güvenliğinizi ciddi şekilde güçlendirmiş oldunuz. Fail2Ban; yanlış parola denemelerini izler, tehdit oluşturan IP’leri otomatik olarak banlar ve sunucunuzu brute-force saldırılarına karşı korur.
Rabisu Bulut üzerinde Rocky Linux sunucunuzu güvenle oluşturup bu yapılandırmayı hemen uygulayabilirsiniz. 🚀